# -*- coding: utf-8 -*-
# @project: huawang-api
# @file： names.py
# @Time：2023/7/10 10:41
# @Author：lizhixiong
from selenium.webdriver.common.by import By

"""
$x("//input[@id='hotels-destination']")
适用于花王云购+、花王云创管理台的页面元素封装
写法参考：
css_id = lambda: (By.CSS_SELECTOR, '#navbar-user-menu')
css_class = lambda: (By.CSS_SELECTOR, '.navbar-user-menu')
xpath = lambda: (By.XPATH, '//*[@class="btn btn-primary btn-lg btn-block"]')
link_text = lambda: (By.LINK_TEXT, '搜索')
"""

"""
el_icon_search = lambda: (By.XPATH, "//*[@class='el-icon-search']")
"""


# 公共部分
class PublicSel:
    # 搜索按钮
    el_icon_search = lambda: (By.XPATH, "//*[@class='el-icon-search']")
    # 搜索按钮——查询
    el_icon_search_2 = lambda: (By.XPATH, "//button[@type='button']//span[contains(text(),'查询')]")
    # 确认按钮
    el_confirm_button = lambda: (By.XPATH, "//span[contains(text(),'确认')]")
    # 提交按钮
    el_submit_button = lambda: (By.XPATH, "//span[contains(text(),'提交')]")
    # 删除按钮
    el_icon_del = lambda: (By.XPATH, "//span[contains(text(),'删除')]")
    # 编辑按钮
    el_edit_button = lambda: (By.XPATH, "//span[contains(text(),'编辑')]")
    # 确定按钮
    el_ok_button = lambda: (By.XPATH, "//span[contains(text(),'确定')]")
    # 取消按钮
    el_cancel_button = lambda: (By.XPATH, "//span[contains(text(),'取消')]")
    # 列表总条数
    el_pagination_total = lambda: (By.XPATH, "//*[@class='el-pagination__total']")
    # tips
    el_tips = lambda: (By.XPATH, "//p[@class='el-message__content']")
    # 列表暂无数据
    el_gg_01 = lambda: (By.XPATH, "//span[contains(@class,'el-table__empty-text')]")


# 商品 & 积分商品
class SpSel:
    # 商品名称输入框
    el_input_goods = lambda: (By.XPATH, "//*[@placeholder='请输入商品名称，关键字，商品ID']")
    # 添加商品按钮
    el_add_product_button = lambda: (By.XPATH, "//span[contains(text(),'添加商品')]")

    # 新增积分商品按钮
    el_add_integral_sp_button = lambda: (By.XPATH, "//span[contains(text(),'新增积分商品')]")
    # 从现有商品导入按钮
    el_import_sp_button = lambda: (By.XPATH, "//span[contains(text(),'从现有商品导入')]")

    # tab橱窗
    el_sp_tab_1 = lambda: (By.XPATH, "//*[@id='tab-1']")  # 出售中商品
    el_sp_tab_2 = lambda: (By.XPATH, "//*[@id='tab-2']")  # 仓库中商品
    el_sp_tab_3 = lambda: (By.XPATH, "//*[@id='tab-3']")  # 已经售罄商品
    el_sp_tab_4 = lambda: (By.XPATH, "//*[@id='tab-4']")  # 警戒库存
    el_sp_tab_5 = lambda: (By.XPATH, "//*[@id='tab-5']")  # 商品回收站

    """
    ***********添加商品页***********
    """
    # 添加商品页-输入框提示语“请选择”
    el_please_select = lambda: (By.XPATH, '//input[@placeholder="请选择"]')
    # 添加商品页-商品名称输入框
    el_trade_name = lambda: (By.XPATH, '//input[@placeholder="请输入商品名称"]')
    # 添加商品页-商品分类定位到右侧框
    el_category = lambda: (By.XPATH, "//label[contains(text(),'商品分类')]/..//*[@class='el-input__inner']")
    # 添加商品页-运费模板定位到右侧框
    el_freight_template = lambda: (By.XPATH, "//label[contains(text(),'运费模板')]/..//*[@class='el-input__inner']")
    # 添加商品页-选择规格定位到右侧框
    el_select_spec = lambda: (By.XPATH, "//label[contains(text(),'选择规格')]/..//*[@class='el-input__inner']")
    # 添加商品页-商品分类：健康产品box
    el_category_box = lambda: (By.XPATH, "//span[contains(text(),'健康产品')]/..//*[@class='el-checkbox']")
    # 添加商品页-商品编号输入框
    el_sp_etem = lambda: (By.XPATH, '//input[@placeholder="请输入产品条码,只能输入数字"]')
    el_sp_etem_1 = lambda: (By.XPATH, '//input[@placeholder="请输入商品编码,只能输入数字"]')
    # 添加商品页-商品关键字输入框
    el_sp_product_keywords = lambda: (By.XPATH, '//input[@placeholder="请输入商品关键字"]')
    # 添加商品页-单位输入框
    el_sp_product_unit = lambda: (By.XPATH, '//input[@placeholder="请输入单位"]')
    # 添加商品页-商品简介输入框
    el_sp_product_description = lambda: (By.XPATH, '//textarea[@placeholder="请输入商品简介"]')
    # 添加商品页-税收编码选择框
    el_sp_tax_code = lambda: (By.XPATH, '//input[@placeholder="请选择税收编码"]')
    # 税收编码下拉框：白酒
    el_sp_tax_code_bj = lambda: (By.XPATH, "//span[contains(text(),'1030302-白酒')]")
    # 添加商品页-商品封面图
    el_sp_cover_image = lambda: (
        By.XPATH, "//label[contains(text(),'商品封面图(335*335)：')]/..//*[@class='upLoadPicBox']")
    # 添加商品页-商品轮播图
    el_sp_rotation_image = lambda: (
        By.XPATH, "//label[contains(text(),'商品轮播图(750*750)：')]/..//*[@class='upLoadPicBox']")
    # 添加商品页-上传图片，素材图片(定位到10张）
    el_sp_pic = lambda: (By.XPATH, "//*[@class='pic']")
    # 添加商品页-使用选中图片
    el_sp_using_pictures = lambda: (By.XPATH, "//span[contains(text(),'使用选中图片')]")
    # 添加商品页-运费模板-默认运费
    el_sp_default_shipping_cost = lambda: (By.XPATH, "//span[contains(text(),'默认运费')]")
    # 添加商品页-规格选择：500ml
    el_sp_500ml = lambda: (By.XPATH, "//span[contains(text(),'500m(瓶)*1')]")
    # 添加商品页-商品属性-上传图片
    el_sp_attributes_upload_image = lambda: (
        By.XPATH, "//label[contains(text(),'商品属性')]/..//*[@class='upLoadPicBox']")
    # 添加商品页-商品属性输入框（一列）
    el_sp_attributes_input = lambda: "//label[contains(text(),'商品属性')]/..//input"
    # 添加商品页-下一步
    el_sp_next_step = lambda: (By.XPATH, "//span[contains(text(),'下一步')]")
    # 添加商品页-其他设置-新品上新
    el_sp_new_product_introduction = lambda: (By.XPATH, "//span[contains(text(),'新品上新')]")

    """
    ***********商品规格***********
    """
    # 规格搜索输入框
    el_search_input = lambda: (By.XPATH, '//input[@placeholder="请输入商品规格"]')
    # 添加商品规格按钮
    sl_add_sp_spec = lambda: (By.XPATH, "//span[contains(text(),'添加商品规格')]")

    """商品分类菜单页"""
    # 新增产品分类按钮
    el_fl_01 = lambda: (By.XPATH, "//span[contains(text(),'新增产品分类')]")
    # 创建分类名称输入框
    el_fl_02 = lambda: (By.XPATH, "//input[contains(@placeholder,'分类名称')]")
    # 弹框确定按钮
    el_fl_03 = lambda: (By.XPATH, "(//span[contains(text(),'确定')])[1]")
    # 商品分类名称搜索输入框
    el_fl_04 = lambda: (By.XPATH, "//input[@placeholder='请输入名称']")
    # 商品分类-搜索按钮
    el_fl_05 = lambda: (By.XPATH, "//i[@class='el-icon-search']")
    # 商品分类列表操作-删除按钮
    el_fl_06 = lambda: (By.XPATH, "(//span[contains(text(),'删除')])[2]")

    """税收编码菜单页"""
    # 新增税收编码按钮
    el_shui_01 = lambda: (By.XPATH, "//button[@type='button']//span[contains(text(),'新增税收编码')]")
    # 新增税收编码弹框-产品类型输入框
    el_shui_02 = lambda: (By.XPATH, "(//input[@type='text'])[4]")
    # 新增税收编码弹框-税收编码输入框
    el_shui_03 = lambda: (By.XPATH, "(//input[@type='text'])[5]")
    # 新增税收编码按钮-确认按钮
    el_shui_04 = lambda: (By.XPATH, "//div[@aria-label='新增税收编码']//span[contains(text(),'确 定')]")
    # 税收编码-搜索区：搜索输入框
    el_shui_05 = lambda: (By.XPATH, "//input[@placeholder='请输入名称']")
    # 税收编码-搜索区：搜索按钮
    el_shui_06 = lambda: (By.XPATH, "//i[@class='el-icon-search']")
    # 税收编码-列表区：删除
    el_shui_07 = lambda: (
    By.XPATH, "//button[@class='el-button el-button--text el-button--small']//span[contains(text(),'删除')]")
    # 税收编码-列表区：删除弹窗二次确认
    el_shui_08 = lambda: (By.XPATH, "//div[@aria-label='提示']//span[contains(text(),'确 定')]")


# 订单
class OrderSel:
    # 订单导出按钮
    el_order_001 = lambda: (By.XPATH, "//span[contains(text(),'订单导出')]")
    # 订单商品信息导出按钮
    el_order_002 = lambda: (By.XPATH, "//span[contains(text(),'订单商品信息导出')]")
    # 订单物流信息导出按钮
    el_order_003 = lambda: (By.XPATH, "//span[contains(text(),'订单物流信息导出')]")
    # 关键词搜索输入框
    el_order_004 = lambda: (
    By.XPATH, "//input[@placeholder='请输入订单号/下单人手机号/收货人手机号/商品名称/商品规格编号']")
    # 搜索按钮
    el_order_005 = lambda: (By.XPATH, "//i[@class='el-icon-search']")
    # 操作列的更多按钮（查出来1条数据）
    el_order_006 = lambda: (By.XPATH, "(//span[contains(@role,'button')][contains(text(),'更多')])[2]")
    # 操作列的更多按钮（查出来1条数据）-订单详情
    el_order_007 = lambda: (
    By.XPATH, "(//li[contains(@class,'el-dropdown-menu__item')][contains(text(),'订单详情')])[2]")
    # 操作列的更多按钮（查出来1条数据）-订单记录
    el_order_008 = lambda: (
    By.XPATH, "(//li[contains(@class,'el-dropdown-menu__item')][contains(text(),'订单记录')])[2]")
    # 操作列的更多按钮（查出来1条数据）-订单备注
    el_order_009 = lambda: (
    By.XPATH, "(//li[contains(@class,'el-dropdown-menu__item')][contains(text(),'订单备注')])[2]")
    # 操作列的更多按钮（查出来1条数据）-订单备注输入框
    el_order_009_01 = lambda: (By.XPATH, "//textarea[contains(@placeholder,'请输入订单备注')]")

    # 操作列的更多按钮（查出来1条数据）-订单补单
    el_order_010 = lambda: (
    By.XPATH, "(//li[contains(@class,'el-dropdown-menu__item')][contains(text(),'订单补单')])[2]")
    # 订单详情页-物流查询
    el_order_011 = lambda: (By.XPATH, "//span[contains(text(),'物流查询')]")
    # 订单详情页-物流查询-物流图标
    el_order_012 = lambda: (By.XPATH, "//div[@class='logistics_img']//img")
    # 订单详情页-物流查询-关闭
    el_order_013 = lambda: (By.XPATH, "//span[contains(text(),'关闭')]")
    # 订单详情页-右上角关闭
    el_order_014 = lambda: (
    By.XPATH, "//div[@aria-label='订单信息']//i[@class='el-dialog__close el-icon el-icon-close']")
    # 补单弹窗-业绩归属日期
    el_order_015 = lambda: (By.XPATH, "//input[contains(@placeholder,'请选择时间')]")
    # 补单弹窗-选一个日期（12号）
    el_order_016 = lambda: (By.XPATH, "//span[normalize-space()='12']")
    # 补单弹窗-提交
    el_order_017 = lambda: (By.XPATH, "(//span[contains(text(),'提交')])[3]")
    # 补单弹窗-提交后，二次弹框：确定按钮
    el_order_018 = lambda: (By.XPATH, "(//span[contains(text(),'确定')])[2]")
    # 补单弹窗撤销补单按钮
    el_order_019 = lambda: (By.XPATH, "//span[contains(text(),'撤消补单')]")


# 用户
class UserSel:
    """余额充值页面"""
    # 余额充值页面——用户搜索输入框
    el_user_001 = lambda: (By.XPATH, "//input[@placeholder='请输入姓名/手机号']")
    # 余额充值页面——余额充值按钮
    el_user_002 = lambda: (By.XPATH, "(//span[contains(text(),'余额充值')])[5]")
    # 余额充值页面——修改余额-增加
    el_user_003 = lambda: (By.XPATH, "//span[contains(text(),'增加')]")
    # 余额充值页面——修改余额-减少
    el_user_004 = lambda: (By.XPATH, "//span[contains(text(),'减少')]")
    # 余额充值页面——余额值的输入框
    el_user_005 = lambda: (By.XPATH, "//input[@role='spinbutton']")
    # 余额充值页面——收/付方开户公司输入框
    el_user_006 = lambda: (By.XPATH, "//input[@placeholder='请输入']")
    # 余额充值页面——备注输入框
    el_user_007 = lambda: (By.XPATH, "//textarea[@class='el-textarea__inner']")
    # 余额充值页面——确定
    el_user_008 = lambda: (By.XPATH, "//span[contains(text(),'确 定')]")
    # 余额充值页面——取消
    el_user_009 = lambda: (By.XPATH, "//span[contains(text(),'取 消')]")

    """用户管理页面"""
    # 用户管理页面——搜索框
    el_user_010 = lambda: (By.XPATH, "//input[@placeholder='请输入姓名/手机号']")
    # 用户管理页面——搜索按钮
    el_user_011 = lambda: (By.XPATH, "//span[contains(text(),'搜索')]")
    # 用户管理页面——发送优惠券
    el_user_012 = lambda: (By.XPATH, "//span[contains(text(),'发送优惠券')]")
    # 用户管理页面——复选框
    el_user_013 = lambda: (By.XPATH,
                           "//td[contains(@class,'el-table-column--selection el-table__cell')]//span[contains(@class,'el-checkbox__inner')]")
    # 用户管理页面——优惠券弹窗——搜索框
    el_user_014 = lambda: (By.XPATH, "//input[contains(@placeholder,'请输入优惠券名称')]")
    # 用户管理页面——优惠券弹窗——搜索按钮
    el_user_015 = lambda: (By.XPATH, "//i[@class='el-icon-search']")
    # 用户管理页面——优惠券弹窗——发送
    el_user_016 = lambda: (By.XPATH,
                           "//body[1]/div[5]/div[1]/div[1]/div[2]/div[1]/div[2]/div[4]/div[2]/table[1]/tbody[1]/tr[1]/td[7]/div[1]/button[1]/span[1]")
    # 用户管理页面-列表操作-更多
    el_user_016_1 = lambda: (By.XPATH, "(//span[contains(@role,'button')][contains(text(),'更多')])[2]")
    # 用户管理页面-列表操作-账户详情
    el_user_016_2 = lambda: (By.XPATH, "(//li[@class='el-dropdown-menu__item'][contains(text(),'账户详情')])[2]")
    # 用户管理页面-列表操作-清除上级推广人
    el_user_016_3 = lambda: (By.XPATH, "(//li[@class='el-dropdown-menu__item'][contains(text(),'清除上级推广人')])[2]")
    # 用户管理页面-列表操作-修改上级推广人
    el_user_016_4 = lambda: (By.XPATH, "(//li[@class='el-dropdown-menu__item'][contains(text(),'修改上级推广人')])[2]")
    # 用户管理页面-列表操作-推广人手机号
    el_user_016_5 = lambda: (By.XPATH, '(//div[@class="cell"])[37]/div/p[2]')

    """修改推广人弹窗"""
    # 修改推广人弹窗-选择用户
    el_xg_01 = lambda: (By.XPATH, "//i[contains(@class,'el-icon-camera cameraIconfont')]")
    # 修改推广人弹窗-确定按钮
    el_xg_02 = lambda: (By.XPATH, "//div[@aria-label='修改推广人']//span[contains(text(),'确 定')]")
    # 修改推广人弹窗-选择用户弹窗-搜索框
    el_xg_03 = lambda: (By.XPATH, "//input[@placeholder='请输入用户昵称/手机号']")
    # 修改推广人弹窗-选择用户弹窗-搜索按钮
    el_xg_04 = lambda: (By.XPATH, "//i[@class='el-icon-search']")
    # 修改推广人弹窗-选择用户弹窗-列表复选框
    el_xg_05 = lambda: (By.XPATH, "//div[@class='cell']//span[@class='el-radio__inner']")
    # 修改推广人弹窗-选择用户弹窗-确定按钮
    el_xg_06 = lambda: (By.XPATH, "//div[@aria-label='用户列表']//span[contains(text(),'确 定')]")

    """用户详情弹窗-持有优惠券"""
    # 左侧持有优惠券
    el_user_017 = lambda: (By.XPATH, "//span[contains(text(),'持有优惠券')]")
    # 第一个优惠券的【立即失效】按钮
    # el_user_018 = lambda: (By.XPATH, "(//span[contains(text(),'立即失效')])[1]")
    el_user_018 = lambda: (By.XPATH,
                           "//body[1]/div[1]/div[1]/div[2]/section[1]/div[1]/div[6]/div[1]/div[2]/div[1]/div[2]/div[2]/div[1]/div[4]/div[2]/table[1]/tbody[1]/tr[1]/td[6]/div[1]/button[1]/span[1]")


# 营销
class MarketingSel:
    """优惠券页面"""
    # 添加优惠券按钮
    el_add_coupon = lambda: (By.XPATH, "//span[contains(text(),'添加优惠劵')]")
    # 添加订单满返劵按钮
    el_add_order_full_rebate = lambda: (By.XPATH, "//span[contains(text(),'添加订单满返劵')]")
    # 请输入优惠券名称
    el_search_coupon_input = lambda: (By.XPATH, '//input[@placeholder="请输入优惠券名称"]')
    # 状态下拉框
    el_status_dropdown_box = lambda: (By.XPATH, "//label[contains(text(),'状态：')]/..//*[@class='el-input__inner']")
    # 未开启
    el_unopened = lambda: (By.XPATH, "//span[contains(text(),'未开启')]")
    # 开启
    el_opened = lambda: (By.XPATH, "//span[contains(text(),'开启')]")

    """添加优惠券页面"""
    # 优惠券名称输入框
    el_input_coupon = lambda: (By.XPATH, "//label[contains(text(),'优惠劵名称')]/..//*[@class='el-input__inner']")
    # 使用有效期限（天）
    el_input_period_of_validity = lambda: (
        By.XPATH, "//label[contains(text(),'使用有效期限（天）')]/..//*[@class='el-input__inner']")
    # 可领取数量
    el_input_amount = lambda: (By.XPATH, "//label[contains(text(),'可领取数量')]/..//*[@class='el-input__inner']")
    # 关闭状态
    el_closed_state = lambda: (By.XPATH, "//span[contains(text(),'关闭')]/..//*[@class='el-radio__inner']")
    # 开启状态
    el_open_state = lambda: (By.XPATH, "//span[contains(text(),'开启')]/..//*[@class='el-radio__inner']")
    # 领取方式：手动领取
    # 领取方式：新人券
    # 领取方式：赠送券
    el_gift_voucher = lambda: (By.XPATH, "//span[contains(text(),'赠送券')]/..//*[@class='el-radio__inner']")
    # 领取方式：积分兑换券
    # 立即创建
    el_create_now = lambda: (By.XPATH, "//span[contains(text(),'立即创建')]")

    """领取记录菜单页面"""
    # 检索区-使用状态下拉按钮
    el_lq_01 = lambda: (By.XPATH, "(//input[@placeholder='请选择使用状态'])[1]")
    # 检索区-使用状态下拉选项——未使用
    el_lq_02 = lambda: (By.XPATH, "//li[@class='el-select-dropdown__item']//span[contains(text(),'未使用')]")
    # 检索区-优惠券输入框
    el_lq_03 = lambda: (By.XPATH, "//input[@placeholder='请输入优惠劵']")
    # 检索区-搜索按钮
    el_lq_04 = lambda: (By.XPATH, "//i[@class='el-icon-search']")
    # 检索区-批量立即失效按钮
    el_lq_05 = lambda: (By.XPATH, "//span[contains(text(),'批量立即失效')]")
    # 列表区-立即失效按钮
    el_lq_06 = lambda: (By.XPATH, "(//span[contains(text(),'立即失效')])[3]")
    # 列表区-复选框
    el_lq_07 = lambda: (By.XPATH, "(//span[contains(@class,'el-checkbox__inner')])[2]")
    # 二次确认
    el_lq_08 = lambda: (By.XPATH, "//span[contains(text(),'确定')]")


# 自动化运营
class AutoMarketing:
    # 新增用户群按钮
    el_users_1 = lambda: (By.XPATH, "//button[@type='button']//span[contains(text(),'新增用户群')]")
    # 新增用户群页面，名称输入框
    el_users_2 = lambda: (
        By.XPATH, "//div[@class='selWidth el-input el-input--medium']//input[@placeholder='用户群名称']")
    el_users_22 = lambda: (By.XPATH, "//input[@placeholder='用户群名称']")
    # 新增用户群页面，用户等级
    el_users_3 = lambda: (By.XPATH, "//button[@type='button']//span[contains(text(),'用户等级')]")
    # 新增用户群页面，用户等级下拉框
    el_users_4 = lambda: (By.XPATH, "//input[@placeholder='用户等级']")
    # 新增用户群页面，用户等级下拉框-普通会员
    el_users_5 = lambda: (By.XPATH, "//span[contains(text(),'普通会员')]")
    # 新增用户群页面，用户等级下拉框-精英会员
    el_users_6 = lambda: (By.XPATH, "//span[contains(text(),'精英会员')]")
    el_users_6_1 = lambda: (By.XPATH, "//span[contains(text(),'VIP')]")
    # 新增用户群页面，用户等级下拉框-VIP会员
    el_users_7 = lambda: (By.XPATH, "//span[contains(text(),'VIP会员')]")
    el_users_7_1 = lambda: (By.XPATH, "//span[contains(text(),'VVIP')]")
    # 新增用户群页面，用户等级下拉框-合作伙伴
    el_users_8 = lambda: (By.XPATH, "//span[contains(text(),'合作伙伴')]")
    el_users_8_1 = lambda: (By.XPATH, "//span[contains(text(),'SVIP')]")
    # 新增用户群页面，用户群描述
    el_users_9 = lambda: (By.XPATH, "//textarea[@placeholder='用户群描述']")
    # 新增用户群页面，保存按钮
    el_users_10 = lambda: (By.XPATH, "//span[contains(text(),'保存')]")
    # 查看按钮
    el_users_11 = lambda: (By.XPATH, "")
    # 用户群菜单搜索输入框
    el_users_12 = lambda: (By.XPATH, "")


# 内容
class EditContentSel:
    # 新增敏感词按钮
    el_add_sensitive = lambda: (By.XPATH, "//span[contains(text(),'新增敏感词')]")
    # 新增敏感词输入框
    el_sen_input = lambda: (By.XPATH, "//*[@class='el-textarea__inner']")
    # 名单类型下拉框
    el_list_dropdown = lambda: (By.XPATH, "//input[@placeholder='请选择名单类型']")
    # 名单类型下拉框——黑名单
    el_hei = lambda: (By.XPATH, "//span[contains(text(),'黑名单')]")
    # 名单类型下拉框——白名单
    el_bai = lambda: (By.XPATH, "//span[contains(text(),'白名单')]")
    # 敏感词搜索输入框
    el_search_input = lambda: (By.XPATH, "//input[@placeholder='请输入敏感词']")


# 财务
class FinancialSel:
    # 充值记录 - 立即审核
    el_financial_001 = lambda: (By.XPATH, "//span[contains(text(),'立即审核')]")
    # 充值记录 - 通过
    el_financial_002 = lambda: (
        By.XPATH, "//label[@class='el-radio is-checked']//span[@class='el-radio__label'][contains(text(),'通过')]")
    # 充值记录 - 不通过
    el_financial_003 = lambda: (By.XPATH, "//span[contains(text(),'不通过')]")
    # 充值记录 - 不通过原因
    el_financial_003_1 = lambda: (By.XPATH, "//textarea[@placeholder='请输入不通过原因']")
    # 充值记录 - 确定
    el_financial_004 = lambda: (By.XPATH, "//span[contains(text(),'确 定')]")
    # 充值记录 - 取消
    el_financial_005 = lambda: (By.XPATH, "//span[contains(text(),'取 消')]")
    # 充值记录 - 关键字搜索输入框
    el_financial_006 = lambda: (By.XPATH, "//input[@placeholder='请输入姓名/手机号/订单号']")
    # 充值记录 - 搜索按钮
    el_financial_007 = lambda: (By.XPATH, "//i[@class='el-icon-search']")
